home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 38 / Amiga Format CD38 (1999-03-15)(Future Publishing)(GB)(Track 1 of 3)[!][issue 1999-04].iso / -seriously_amiga- / misc / ced_html / html / html_table.ced < prev    next >
Text File  |  1999-01-25  |  11KB  |  396 lines

  1. /*
  2. ** html_table.ced
  3. **
  4. ** $VER: html_table.ced 1.3 (12.20.1998)
  5. **
  6. ** Arexx script for HTML v3.2 table options
  7. **
  8. ** This script works with CygnusEd Professional v4.2
  9. **
  10. ** Copyright © Eric BELLE
  11. */
  12.  
  13. /*
  14. **------------------------------------------------------------------------------
  15. **    Initialisation
  16. **------------------------------------------------------------------------------
  17. */
  18.  
  19. OPTIONS RESULTS                            /* Tell CygnusEd to return results. */
  20. NL = '0A'X                                    /* Alias for new line. */
  21. KRETURN = RAWKEY 68                    /* Shortcut to the return key. */
  22. KTAB = RAWKEY 66                        /* Shortcut to the tab key. */
  23. STATUS TABSARESPACES                /* Return TAB mode ("tab" or "space"). */
  24. IF RESULT = 1                                /* Test the TAB mode. */
  25. THEN "TABS = SPACES"                /* Switch TAB mode from "space" to "tab". */
  26. ELSE NOP                                        /* No operation. */
  27. TAB SIZE 1                                    /* Set TAB size proportional to 2 spaces. */
  28.  
  29. /*
  30. **------------------------------------------------------------------------------
  31. **    Line number
  32. **------------------------------------------------------------------------------
  33. */
  34.  
  35. GETNUMBER 2 '"Line number?"' 1 32768
  36. LineNumber = RESULT
  37.  
  38. IF (LineNumber=" ")
  39. THEN EXIT 0
  40. ELSE NOP
  41.  
  42. /*
  43. **------------------------------------------------------------------------------
  44. **    Column number
  45. **------------------------------------------------------------------------------
  46. */
  47.  
  48. GETNUMBER 2 '"Column number?"' 1 32768
  49. ColumnNumber = RESULT
  50.  
  51. IF (ColumnNumber=" ")
  52. THEN EXIT 0
  53. ELSE NOP
  54.  
  55. /*
  56. **------------------------------------------------------------------------------
  57. **    Table size options
  58. **------------------------------------------------------------------------------
  59. */
  60.  
  61. TableSize = "q"
  62. DO WHILE ~(TableSize="y" | TableSize="n" | TableSize="d",
  63.                     | TableSize=" " | TableSize="RESULT")
  64.     GETSTRING "d" '"Table size options: (y)es, (n)o, (d)efault?"'
  65.     TableSize = RESULT
  66. END
  67.  
  68. IF (TableSize="RESULT" | TableSize=" ")
  69. THEN EXIT 0
  70. ELSE NOP
  71.  
  72. SELECT
  73.     WHEN (TableSize="d") THEN DO
  74.         BorderSize = "5"
  75.         SquaringSize = "5"
  76.         TableWidth = "100%"
  77.         TableHeight = "100%"
  78.         CellPadding = "10"
  79.     END
  80.     WHEN (TableSize="y") THEN DO
  81.         GETNUMBER 5 '"Border size?"' 0 32768
  82.         BorderSize = RESULT
  83.     
  84.         IF (BorderSize=" ")
  85.         THEN EXIT 0
  86.         ELSE NOP
  87.  
  88.         GETNUMBER 5 '"Squaring size?"' 0 32768
  89.         SquaringSize = RESULT
  90.  
  91.         IF (SquaringSize=" ")
  92.         THEN EXIT 0
  93.         ELSE NOP
  94.  
  95.         GETSTRING "100%" '"Table width (pixels or browser window %)?"'
  96.         TableWidth = RESULT
  97.  
  98.         IF (TableWidth="RESULT" | TableWidth=" ")
  99.         THEN EXIT 0
  100.         ELSE NOP
  101.  
  102.         GETSTRING "100%" '"Table height (pixels or browser window %)?"'
  103.         TableHeight = RESULT
  104.  
  105.         IF (TableHeight="RESULT" | TableHeight=" ")
  106.         THEN EXIT 0
  107.         ELSE NOP
  108.  
  109.         GETSTRING "10" '"Pixels between cell border and contents?"'
  110.         CellPadding = RESULT
  111.  
  112.         IF (Cell padding="RESULT" | CellPadding=" ")
  113.         THEN EXIT 0
  114.         ELSE NOP
  115.     END
  116.     OTHERWISE NOP
  117. END
  118.  
  119. /*
  120. **------------------------------------------------------------------------------
  121. **    Table color options
  122. **------------------------------------------------------------------------------
  123. */
  124.  
  125. TableColor = "q"
  126. DO WHILE ~(TableColor="y" | TableColor="n" | TableColor="d",
  127.                     | TableColor=" " | TableColor="RESULT")
  128.     GETSTRING "d" '"Table color options: (y)es, (n)o, (d)efault?"'
  129.     TableColor = RESULT
  130. END
  131.  
  132. IF (TableColor="RESULT" | TableColor=" ")
  133. THEN EXIT 0
  134. ELSE NOP
  135.  
  136. SELECT
  137.     WHEN (TableColor="d") THEN DO
  138.         BackgroundColor = "#808080"
  139.         BorderColor = "#FFFFFF"
  140.         BorderColorDark = "#303030"
  141.         BorderColorLight = "#B0B0B0"
  142.     END
  143.     WHEN (TableColor="y") THEN DO
  144.         GETSTRING "#808080" '"Background color (#RGB)?"'
  145.         BackgroundColor = RESULT
  146.  
  147.         IF (BackgroundColor="RESULT" | BackgroundColor=" ")
  148.         THEN EXIT 0
  149.         ELSE NOP
  150.  
  151.         GETSTRING "#FFFFFF" '"Border color (#RGB)?"'
  152.         BorderColor = RESULT
  153.  
  154.         IF (BorderColor="RESULT" | BorderColor=" ")
  155.         THEN EXIT 0
  156.         ELSE NOP
  157.  
  158.         GETSTRING "#303030" '"Border color for bottom shade (#RGB)?"'
  159.         BorderColorDark = RESULT
  160.  
  161.         IF (BorderColorDark="RESULT" | BorderColorDark=" ")
  162.         THEN EXIT 0
  163.         ELSE NOP
  164.  
  165.         GETSTRING "#B0B0B0" '"Border color for top shade (#RGB)?"'
  166.         BorderColorLight = RESULT
  167.  
  168.         IF (BorderColorLight="RESULT" | BorderColorLight=" ")
  169.         THEN EXIT 0
  170.         ELSE NOP
  171.     END
  172.     OTHERWISE NOP
  173. END
  174.  
  175. /*
  176. **------------------------------------------------------------------------------
  177. **    Table caption
  178. **------------------------------------------------------------------------------
  179. */
  180.  
  181. CaptionMode = "q"
  182. DO WHILE ~(CaptionMode="t" | CaptionMode="b" | CaptionMode="n",
  183.                     | CaptionMode=" " | CaptionMode="RESULT")
  184.     GETSTRING "n" '"Caption type: (t)op, (b)ottom, (n)othing?"'
  185.     CaptionMode = RESULT
  186. END
  187.  
  188. IF (CaptionMode="RESULT" | CaptionMode=" ")
  189. THEN EXIT 0
  190. ELSE NOP
  191.  
  192. IF (CaptionMode="n")
  193. THEN NOP
  194. ELSE DO
  195.     CaptionPositionMode = "q"
  196.     DO WHILE ~(CaptionPositionMode="l" | CaptionPositionMode="c",
  197.                         | CaptionPositionMode="r",
  198.                         | CaptionPositionMode=" " | CaptionPositionMode="RESULT")
  199.         GETSTRING "c" '"Caption position: (l)eft, (c)enter, (r)ight?"'
  200.         CaptionPositionMode = RESULT
  201.     END
  202.  
  203.     IF (CaptionPositionMode="RESULT" | CaptionPositionMode=" ")
  204.     THEN EXIT 0
  205.     ELSE NOP
  206. END
  207.  
  208. /*
  209. **------------------------------------------------------------------------------
  210. **    Cell Mode
  211. **------------------------------------------------------------------------------
  212. */
  213.  
  214. CellMode = "q"
  215. DO WHILE ~(CellMode="l" | CellMode="r" | CellMode="t" | CellMode="b",
  216.                     | CellMode="n" | CellMode=" " | CellMode="RESULT")
  217.     GETSTRING "l" '"Main cells: (l)eft, (r)ight, (t)op, (b)ottom, (n)o?"'
  218.     CellMode = RESULT
  219. END
  220.  
  221. IF (CellMode="RESULT" | CellMode=" ")
  222. THEN EXIT 0
  223. ELSE NOP
  224.  
  225.  
  226. /*
  227. **------------------------------------------------------------------------------
  228. **    Html table marks
  229. **------------------------------------------------------------------------------
  230. */
  231.  
  232. IF (TableSize="n")
  233. THEN TableSizeString = ""
  234. ELSE DO
  235.     TableSizeString =                    " BORDER="                            || BorderSize
  236.     TableSizeString = TableSizeString || " CELLSPACING="                || SquaringSize
  237.     TableSizeString = TableSizeString || " WIDTH="                            || TableWidth
  238.     TableSizeString = TableSizeString || " HEIGHT="                            || TableHeight
  239.     TableSizeString = TableSizeString || " CELLPADDING="                || CellPadding
  240. END
  241.  
  242. IF (TableColor="n")
  243. THEN TableColorString = ""
  244. ELSE DO
  245.     TableColorString =                                          " BGCOLOR="                    || BackgroundColor
  246.     TableColorString = TableColorString || " BORDERCOLOR="            || BorderColor
  247.     TableColorString = TableColorString || " BORDERCOLORDARK="    || BorderColorDark
  248.     TableColorString = TableColorString || " BORDERCOLORLIGHT="    || BorderColorLight
  249. END
  250.  
  251. OpenTable = "<TABLE" || TableSizeString || TableColorString || ">"
  252. CloseTable = "</TABLE>"
  253.  
  254. IF (CaptionMode="n")
  255. THEN NOP
  256. ELSE DO
  257.     SELECT
  258.         WHEN (CaptionMode="t") THEN CaptionModeString = " VALIGN=TOP"
  259.         WHEN (CaptionMode="b") THEN CaptionModeString = " VALIGN=BOTTOM"
  260.         OTHERWISE NOP
  261.     END
  262.  
  263.     SELECT
  264.         WHEN (CaptionPositionMode="c") THEN CaptionPositionModeString = " ALIGN=CENTER"
  265.         WHEN (CaptionPositionMode="l") THEN CaptionPositionModeString = " ALIGN=LEFT"
  266.         WHEN (CaptionPositionMode="r") THEN CaptionPositionModeString = " ALIGN=RIGHT"
  267.         OTHERWISE NOP
  268.     END
  269.  
  270.     OpenCaption = "<CAPTION" || CaptionModeString || CaptionPositionModeString || ">"
  271.     CloseCaption = "</CAPTION>"
  272. END
  273.  
  274. /*
  275. **------------------------------------------------------------------------------
  276. **    Html table structure
  277. **------------------------------------------------------------------------------
  278. */
  279.  
  280. TEXT OpenTable ; "AUTO-INDENT" ; KTAB
  281.  
  282. IF (CaptionMode="n")
  283. THEN NOP
  284. ELSE DO
  285.     TEXT OpenCaption
  286.     "AUTO-INDENT" ; KTAB
  287.     TEXT "Should be modified - Table caption"
  288.     "AUTO-INDENT" ; BACKTAB
  289.     TEXT CloseCaption
  290.     "AUTO-INDENT"
  291.     END
  292.  
  293. SELECT
  294.     WHEN (CellMode="n") THEN DO
  295.         DO L=1 TO LineNumber
  296.             TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  297.             DO C=1 TO ColumnNumber
  298.                 TEXT "<TD>" ; "AUTO-INDENT" ; KTAB
  299.                 TEXT "Should be modified - Cell (line " || L || " column " || C || ")"
  300.                 "AUTO-INDENT" ; BACKTAB
  301.                 TEXT "</TD>" ; "AUTO-INDENT"
  302.             END
  303.             BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  304.         END
  305.     END
  306.     WHEN (CellMode="t") THEN DO
  307.         TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  308.             DO C=1 TO ColumnNumber
  309.                 TEXT "<TH>" ; "AUTO-INDENT" ; KTAB
  310.                 TEXT "Should be modified - Main cell (line 1, column " || C || ")" 
  311.                 "AUTO-INDENT" ; BACKTAB
  312.                 TEXT "</TH>" ; "AUTO-INDENT"
  313.             END
  314.         BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  315.         DO L=2 TO LineNumber
  316.             TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  317.             DO C=1 TO ColumnNumber
  318.                 TEXT "<TD>" ; "AUTO-INDENT" ; KTAB
  319.                 TEXT "Should be modified - Default cell (line " || L || " column " || C || ")"
  320.                 "AUTO-INDENT" ; BACKTAB
  321.                 TEXT "</TD>" ; "AUTO-INDENT"
  322.             END
  323.             BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  324.         END
  325.     END
  326.     WHEN (CellMode="b") THEN DO
  327.         DO L=1 TO LineNumber-1
  328.             TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  329.             DO C=1 TO ColumnNumber
  330.                 TEXT "<TD>" ; "AUTO-INDENT" ; KTAB
  331.                 TEXT "Should be modified - Default cell (line " || L || " column " || C || ")"
  332.                 "AUTO-INDENT" ; BACKTAB
  333.                 TEXT "</TD>" ; "AUTO-INDENT"
  334.             END
  335.             BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  336.         END
  337.         TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  338.             DO C=1 TO ColumnNumber
  339.                 TEXT "<TH>" ; "AUTO-INDENT" ; KTAB
  340.                 TEXT "Should be modified - Main cell (line "|| LineNumber || ", column " || C || ")" 
  341.                 "AUTO-INDENT" ; BACKTAB
  342.                 TEXT "</TH>" ; "AUTO-INDENT"
  343.             END
  344.         BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  345.     END
  346.     WHEN (CellMode="l") THEN DO        
  347.         DO L=1 TO LineNumber
  348.             TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  349.             TEXT "<TH>" ; "AUTO-INDENT" ; KTAB
  350.             TEXT "Should be modified - Main cell (line "|| L || ", column 1)"
  351.             "AUTO-INDENT" ; BACKTAB
  352.             TEXT "</TH>" ; "AUTO-INDENT"
  353.             DO C=2 TO ColumnNumber
  354.                 TEXT "<TD>" ; "AUTO-INDENT" ; KTAB
  355.                 TEXT "Should be modified - Default cell (line " || L || " column " || C || ")"
  356.                 "AUTO-INDENT" ; BACKTAB
  357.                 TEXT "</TD>" ; "AUTO-INDENT"
  358.             END
  359.             BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  360.         END
  361.     END
  362.     WHEN (CellMode="r") THEN DO
  363.         DO L=1 TO LineNumber
  364.             TEXT "<TR>" ; "AUTO-INDENT" ; KTAB
  365.             DO C=1 TO ColumnNumber-1
  366.                 TEXT "<TD>" ; "AUTO-INDENT" ; KTAB
  367.                 TEXT "Should be modified - Default cell (line " || L || " column " || C || ")"
  368.                 "AUTO-INDENT" ; BACKTAB
  369.                 TEXT "</TD>" ; "AUTO-INDENT"
  370.             END
  371.             TEXT "<TH>" ; "AUTO-INDENT" ; KTAB
  372.             TEXT "Should be modified - Main cell (line "|| L || ", column " || ColumnNumber || ")"
  373.             "AUTO-INDENT" ; BACKTAB
  374.             TEXT "</TH>" ; "AUTO-INDENT"
  375.             BACKTAB ; TEXT "</TR>" ; "AUTO-INDENT"
  376.         END
  377.     END
  378.     OTHERWISE NOP
  379. END
  380.  
  381. IF (ColumnNumber=0 & LineNumber=0)
  382. THEN DO
  383.     TEXT "Should be modified - Table" ; "AUTO-INDENT"
  384.     END
  385. ELSE NOP
  386.  
  387. BACKTAB ; TEXT CloseTable
  388.  
  389. /*
  390. **------------------------------------------------------------------------------
  391. **    End of html_table.ced Arexx script
  392. **------------------------------------------------------------------------------
  393. */
  394.  
  395. EXIT 0
  396.